package com.lonely.fx;

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.MenuButton;
import javafx.scene.control.MenuItem;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;

/**
 * @date: 2022-07-07 14:34
 * @author: ztkj-hzb
 * @description: 菜单按钮，功能跟Menu差不多，但本身不是MenuItem的子类，所有不需要寄托在菜单栏上
 * 关键类： MenuButton
 **/
public class MenuButtonSettingMain extends Application {

    public static void main(String[] args) {
        launch(args);
    }

    /**
     *
     */
    @Override
    public void start(Stage primaryStage) throws Exception {

        HBox hBox = new HBox();

        //TODO 设置MenuButton，作用跟 Menu差不多，只是不需要寄托在MenuBar上
        MenuButton menuButton = new MenuButton("MenuButton");


        MenuItem menuItem1 = new MenuItem("篮球");
        menuItem1.setStyle("-fx-background-color: pink");

        MenuItem menuItem2 = new MenuItem("足球");

        MenuItem menuItem3 = new MenuItem("羽毛球");

        menuButton.getItems().addAll(menuItem1, menuItem2, menuItem3);

        hBox.getChildren().add(menuButton);

        primaryStage.setScene(new Scene(hBox));
        primaryStage.setWidth(600);
        primaryStage.setHeight(500);
        primaryStage.show();


        //TODO: 设置MenuItem的宽度跟着Menu变化
        double menuWidth = menuButton.getWidth();
        menuItem2.setStyle(String.format("-fx-pref-width: %s; -fx-background-color: red", menuWidth));
    }
}
